﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Runtime.Serialization;
using System.Text;
using System.Threading.Tasks;

namespace Matrix.MaKaYunShang.Model.DataStatisticsModels
{
    public class BaseDataStatOrderDetail
    {
        /// <summary>
        /// 销售时间
        /// </summary>
        [DataMember(Name = "OrderTime")]
        [Display(Name = "销售时间")]
        [Description("销售时间")]
        public string OrderTime { get; set; }

        /// <summary>
        /// 订单编号
        /// </summary>		
        [DataMember(Name = "OrderNo")]
        [Display(Name = "订单编号")]
        [Description("订单编号")]
        public string OrderNo { get; set; }

        /// <summary>
        /// 微信端支付流水号
        /// </summary>		
        [DataMember(Name = "WechatTransactionId")]
        [Display(Name = "微信端支付流水号")]
        [Description("微信端支付流水号")]
        public string WechatTransactionId { get; set; }

        /// <summary>
        /// 商品条形码
        /// </summary>		
        [DataMember(Name = "CommodityBarCode")]
        [Display(Name = "商品条形码")]
        [Description("商品条形码")]
        public string CommodityBarCode { get; set; }

        /// <summary>
        /// 商品名称
        /// </summary>		
        [DataMember(Name = "CommodityName")]
        [Display(Name = "商品名称")]
        [Description("商品名称")]
        public string CommodityName { get; set; }

        /// <summary>
        /// 商品计量单位
        /// </summary>		
        [DataMember(Name = "CommodityUnit")]
        [Display(Name = "商品计量单位")]
        [Description("商品计量单位")]
        public string CommodityUnit { get; set; }

        /// <summary>
        /// 商品规格
        /// </summary>		
        [DataMember(Name = "CommoditySpec")]
        [Display(Name = "商品规格")]
        [Description("商品规格")]
        public string CommoditySpec { get; set; }

        /// <summary>
        /// 销售数量
        /// </summary>		
        [DataMember(Name = "Quantity")]
        [Display(Name = "销售数量")]
        [Description("销售数量")]
        public int Quantity { get; set; }

        /// <summary>
        /// 商品单价
        /// </summary>		
        [DataMember(Name = "UnitPrice")]
        [Display(Name = "商品单价")]
        [Description("商品单价")]
        public decimal UnitPrice { get; set; }

        /// <summary>
        /// 实收金额
        /// </summary>		
        [DataMember(Name = "PayPrice")]
        [Display(Name = "实收金额")]
        [Description("实收金额")]
        public decimal PayPrice { get; set; }

        /// <summary>
        /// 立减金额
        /// </summary>		
        [DataMember(Name = "RandomPayDiscount")]
        [Display(Name = "立减金额")]
        [Description("立减金额")]
        public decimal RandomPayDiscount { get; set; }

        /// <summary>
        /// 支付方式
        /// </summary>		
        [DataMember(Name = "PayWayDesc")]
        [Display(Name = "支付方式")]
        [Description("支付方式")]
        public string PayWayDesc { get; set; }

        /// <summary>
        /// 店铺名称
        /// </summary>		
        [DataMember(Name = "ShopName")]
        [Display(Name = "店铺名称")]
        [Description("店铺名称")]
        public string ShopName { get; set; }

        /// <summary>
        /// 售卖方式
        /// </summary>		
        [DataMember(Name = "SellingWay")]
        [Display(Name = "售卖方式")]
        [Description("售卖方式")]
        public string SellingWay { get; set; }
    }

    public class FullDataStatOrderDetail : BaseDataStatOrderDetail
    {
        /// <summary>
        /// 订单ID
        /// </summary>
        [DataMember(Name = "OrderId")]
        [Display(Name = "订单ID")]
        [Description("订单ID")]
        public int OrderId { get; set; }

        /// <summary>
        /// 订单详情ID
        /// </summary>
        [DataMember(Name = "OrderDetailId")]
        [Display(Name = "订单详情ID")]
        [Description("订单详情ID")]
        public int OrderDetailId { get; set; }
    }
}
